package com.waymap.mapper;

import com.waymap.common.vo.TransactionsJsonVo;
import com.waymap.domain.Transactions;
import com.waymap.utils.MyMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface TransactionsMapper extends MyMapper<Transactions> {
    /**
     * @author vincent mai
     * 查询单号列表
     * @return
     */
    List<Map<String,Object>> getTranidList(Map<String,Object> param);

    //查询发送状态为N的数据
    List<Transactions> getNoSendToNS();

    /**
     * 单号内容清单
     * @param param
     * @return
     */
    List<Map<String,Object>> getTransationDetailList(Map<String, Object> param);
    /**
     * @author vincent mai
     * 单号内容清单
     * @param param
     * @return
     */
    
    List<Map<String,Object>> getTransationDetailList2(Map<String, Object> param);

    /***
     * 出库清单查询
     * @param param
     * @return
     */
    List<Map<String,Object>> getTransationDetailList3(Map<String, Object> param);

    /**
     * 查询采购入库单号内容临时清单列表
     * @param param
     * @return
     */
    List<Map<String,Object>> getTransationTempList(Map<String, Object> param);

    /**
     * 通过tranid查询数据
     * @param param
     * @return
     */
    Transactions getTransactionByTranid(Map<String, Object> param);

    List<Map<String,Object>> getWaveCode(Map<String, Object> param);

    List<Map<String,Object>> getTransationId(Map<String, Object> param);

    List<Map<String,Object>> getInTransactionByLocatId(Map<String, Object> param);

    List<Map<String,Object>> getOutTransactionByLocatId(Map<String, Object> param);

    int insertTransactions(Transactions tranVo);

    TransactionsJsonVo getTransaction(Map<String, Object> param);

    int updateTranVo(Transactions tranVo);

    void updateStatusByTranid(Map<String, Object> param);
    void updateUserByTranid(Map<String, Object> param);

    void updateStatusByError(Map<String, Object> param);

    /**
     * 获取Transactions列表
     * @return
     */
    List<Transactions> getTransactionList(Map<String, Object> param);

    List<Transactions> getall();

    List<Map<String,Object>> searchICItem(Map<String, Object> param);

    List<Transactions> queryTransactionList(Map<String, Object> param);

    List<Transactions> searchErrorTransactions(Map<String, Object> param);

    int insertTransaction(Transactions trOb);



}